﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Heritage.Codebox
{
    public class Constants
    {
        public const int SOCIALMESSAGE_STATUS_UNREAD = 0;
        public const int SOCIALMESSAGE_STATUS_READ = 1;
        public const int SOCIALMESSAGE_STATUS_DELETED = 2;

        public const int SOCIALMESSAGE_TYPE_GAME_FEEDBACK = 1;
        public const int SOCIALMESSAGE_TYPE_PERSONAL_FEEDBACK_PUBLIC = 2;
        public const int SOCIALMESSAGE_TYPE_PERSONAL_FEEDBACK_PRIVATE = 3;
        public const int SOCIALMESSAGE_TYPE_NEWS = 4;
        public const int SOCIALMESSAGE_TYPE_EVENT = 5;
        public const int SOCIALMESSAGE_TYPE_PRIVATE = 6;

        public const int FLAGGED_AS_INTERESTING = 1;

        public const int PAGE_SIZE = 20; 

        public const int USER_VALIDATED = 1;
        public const int USER_NOT_VALIDATED = 0;

        public const int TEMPLATE_CONFIRMREGISTRATION = 1;

        public const int REGISTER_CLOSED = 0;
        public const int REGISTER_BYCODE = 1;
        public const int REGISTER_ALLOWED = 2;

        public const int ACCESS_DECLINED = 0;
        public const int ACCESS_ALLOWED = 1;

        public const int USER_ROLE_BANNED = 4;
        public const int USER_ROLE_TESTER = 3;
        public const int USER_ROLE_JUNIOR = 0;
        public const int USER_ROLE_NORMAL = 1;
        public const int USER_ROLE_SENIOR = 2;
        public const int USER_ROLE_MODERATOR = 49;
        public const int USER_ROLE_ADMIN = 99;
        public const int USER_ROLE_GAMEMASTER = 100;

        public const int GAMEDESC_KOMISSAR_NONE = 0;
        public const int GAMEDESC_KOMISSAR_CHECKING = 1;
        public const int GAMEDESC_KOMISSAR_KILLING = 2;
        public const int GAMEDESC_KOMISSAR_REANIMATING = 3;
        public const int GAMEDESC_MAFIA_NONE = 0;
        public const int GAMEDESC_MAFIA_WEAK = 1;
        public const int GAMEDESC_MAFIA_NORMAL = 2;
        public const int GAMEDESC_MAFIA_STRONG = 3;
        public const int GAMEDESC_MAFIA_VERYSTRONG = 4;
        public const int GAMEDESC_NO_PRIVATE = 1;
        public const int GAMEDESC_SECRET_VOTE = 1;

        public const int START_CONDITION_ONE_ALWAYS = 0;
        public const int START_CONDITION_ONE_IF_NONE = 1;
        public const int START_CONDITION_ONE_RANDOM = 2;
        public const int START_CONDITION_MANUAL = 3;

        public const int GAME_STATE_AVAILABLE = 0;
        public const int GAME_STATE_IN_PROGRESS = 1;
        public const int GAME_STATE_STOPPED = 2;
        public const int GAME_STATE_FINISHED = 3;

        public const int STATUS_CITIZEN = 0;
        public const int STATUS_MAFIA = 1;
        public const int STATUS_ADVOCAT = 2;
        public const int STATUS_THIEF = 3;
        public const int STATUS_MANIAC = 4;
        public const int STATUS_KOMISSAR_CHECKING = 5;
        public const int STATUS_KOMISSAR_KILLING = 6;
        public const int STATUS_KOMISSAR_REANIMATING = 7;
        public const int STATUS_SHERIFF = 8;
        public const int STATUS_REANIMATOR = 9;
        public const int STATUS_GIRL = 10;

        public const int USERSTATE_ALIVE = 0;
        public const int USERSTATE_KILLED = 1;
        public const int USERSTATE_DEAD = 2;
        public const int USERSTATE_IMPRISONED = 3;
        public const int USERSTATE_IN_JAIL = 6;
        public const int USERSTATE_AUTOKILLED_AWHILE = 7;
        public const int USERSTATE_SELFKILLED_AWHILE = 8;
        public const int USERSTATE_AUTOKILLED = 4;
        public const int USERSTATE_SELFKILLED = 5;

        public const int USERRESULT_NOT_FINISHED = 0;
        public const int USERRESULT_WON = 1;
        public const int USERRESULT_LOST = 2;
        public const int USERRESULT_DRAW = 3;

        public const int GAMERESULT_CITIZENS_WON = 0;
        public const int GAMERESULT_MAFIA_WON = 1;
        public const int GAMERESULT_MANIAC_WON = 2;
        public const int GAMERESULT_DRAW = 3;

        public const int USERGENDER_HE = 0;
        public const int USERGENDER_SHE = 1;
        public const int USERGENDER_IT = 2;
        public const int USERGENDER_THEY = 3;

        public const int GAME_GOES_TO_ARCHIVE_DAYS = 3;
        public const int GAME_FIRST_DAY_GAP = 2;

        public static Guid ADRESAT_EVERYBODY = new Guid("A48CD847-1459-41FD-BB48-716025DB475E");
        public static Guid ADRESAT_GAZETA = new Guid("1061F615-A8BD-45C8-93AD-C34DBDF8EED2");
        public static Guid ADRESAT_GAZETA_MORNING = new Guid("56E21E78-572D-48B7-A682-EFDD5D51A609");
        public static Guid ADRESAT_MAFIA = new Guid("AEEC89B5-5C4D-4167-95C4-983BE71EA258");
        public static Guid ADRESAT_MAYOR = new Guid("591DCEA8-F577-4388-926D-F562132D9CBF");
        public static Guid ADRESAT_GAMEMASTER = new Guid("9DD76484-DE18-41E5-8BA4-938925B9EC5F");
        public static Guid ADRESAT_ROBOT = new Guid("DF384FD6-CA18-4180-A9D4-59D8C5D47355");
        public static Guid ADRESAT_MODERATOR = new Guid("A20FBA11-4194-4B64-983A-CDA242E4CDD9");

        public const int RIBBON_SPONSOR = 1;

        public const string COMPONENT_BACKGROUND = "Background"; 
        public const string COMPONENT_SITE = "Site";
        public const string COMPONENT_BASE = "BaseController";
        public const string COMPONENT_SIGNIN = "SignIn";
        public const string COMPONENT_REGISTRATION = "Registration";
        public const string COMPONENT_GAMEMASTER = "GameMaster";
        public const string COMPONENT_SENDMAIL = "SendMail";
        public const string COMPONENT_HANDLECOMMAND = "HandleCommand";
    }
}